.ele-map-picker-dialog .el-dialog__body {
  padding: 0;
}

.ele-map-picker-hide {
  display: none !important;
}

/* 顶部工具栏 */
.ele-map-picker-header {
  display: flex;
  padding: 8px 18px;

  .ele-map-picker-header-search {
    flex: 1;

    .el-autocomplete {
      max-width: 200px;
    }
  }
}

/* 主体区域 */
.ele-map-picker-body {
  display: flex;
  border-top: 1px solid hsla(0, 0%, 60%, 0.15);

  /* 地图容器 */
  .ele-map-picker-main {
    flex: 1;
    position: relative;
    border-bottom-left-radius: 4px;
    overflow: hidden;

    .ele-map-picker-main-plus {
      color: #3b74ff;
      font-size: 12px;
      font-weight: 600;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
    }

    .ele-map-picker-main-icon {
      width: 26px;
      position: absolute;
      left: 50%;
      bottom: 50%;
      margin-left: -13px;
    }
  }

  /* poi列表 */
  .ele-map-picker-poi-list {
    width: 300px;
    overflow: auto;
  }
}

/* poi列表item */
.ele-map-picker-poi-item {
  padding: 8px 30px 8px 44px;
  border-bottom: 1px solid hsla(0, 0%, 60%, 0.15);
  position: relative;
  cursor: pointer;

  &:hover {
    background-color: hsla(0, 0%, 60%, 0.05);
  }

  .ele-map-picker-poi-item-icon {
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    font-size: 20px;
    opacity: 0.4;
  }

  .ele-map-picker-poi-item-title {
    font-size: 14px;
  }

  .ele-map-picker-poi-item-address {
    font-size: 12px;
    margin-top: 2px;
    opacity: 0.6;
  }

  .ele-map-picker-poi-item-check {
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    color: #3b74ff;
    font-size: 16px;
    display: none;
  }

  &.active .ele-map-picker-poi-item-check {
    display: block;
  }
}

/* 搜索建议列表 */
.ele-map-picker-search-pop {
  max-width: 100%;
  width: 240px !important;

  .el-autocomplete-suggestion__wrap {
    max-height: 320px;
  }
}

.ele-map-picker-suggestion-item {
  padding-right: 0;
  padding-left: 24px;
  line-height: normal;
  border: none;

  &:hover {
    background-color: transparent;
  }

  .ele-map-picker-poi-item-icon {
    left: 0;
    font-size: 14px;
    font-weight: 600;
    opacity: 0.3;
  }

  .ele-map-picker-poi-item-title,
  .ele-map-picker-poi-item-address {
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all;
  }
}

/* 地图图标跳动动画 */
.ele-map-picker-anim-bounce {
  animation: elePickerAnimBounce 500ms;
  animation-direction: alternate;
}

@keyframes elePickerAnimBounce {
  0%,
  60%,
  75%,
  90%,
  to {
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0%,
  to {
    transform: translate3d(0, 0, 0);
  }

  25% {
    transform: translate3d(0, -10px, 0);
  }

  50% {
    transform: translate3d(0, -20px, 0);
  }

  75% {
    transform: translate3d(0, -10px, 0);
  }
}

/* 小屏幕适应 */
@media screen and (max-width: 768px) {
  .ele-map-picker-dialog {
    margin: 0 !important;
    width: 100vw !important;
    max-width: unset !important;
    border-radius: 0 !important;
  }

  .ele-map-picker-body {
    display: block;

    .ele-map-picker-main > div {
      height: 250px !important;
    }

    .ele-map-picker-poi-list {
      width: auto;
      height: calc(100vh - 353px) !important;
    }
  }
}
